/*
*********************************************************************************************************
*
*                                   NETWORK SECURITY HARDWARE LAYER
*
*                                            SEGGER emSSL
*
* Filename : net_secure_emssl_hw.h
* Version  : V3.06.01
*********************************************************************************************************
* Note(s)  : (1) Assumes the following versions (or more recent) of software modules are included in
*                the project build :
*
*                (a) SEGGER emSSL V2.54a
*                (b) uC/Clk V3.09
*
*                See also 'net.h  Note #1'.
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*********************************************************************************************************
*                                               MODULE
*********************************************************************************************************
*********************************************************************************************************
*/

#ifdef   NET_SECURE_MODULE_EN
#define  NET_SECURE_EMSSL_MODULE


/*
*********************************************************************************************************
*********************************************************************************************************
*                                            INCLUDE FILES
*********************************************************************************************************
*********************************************************************************************************
*/

#ifndef  NET_SECURE_EMSSL_HW_MODULE_PRESENT
#define  NET_SECURE_EMSSL_HW_MODULE_PRESENT


/*
*********************************************************************************************************
*********************************************************************************************************
*                                         FUNCTION PROTOTYPES
*********************************************************************************************************
*********************************************************************************************************
*/

extern  void  NetSecure_EmSSL_HW_RNG_Init   (void);
extern  void  NetSecure_EmSSL_HW_HASH_Init  (void);
extern  void  NetSecure_EmSSL_HW_CRYPTO_Init(void);

#define  NET_SECURE_HW_ACCEL_INIT()                 do {                                   \
                                                        NetSecure_EmSSL_HW_RNG_Init();     \
                                                        NetSecure_EmSSL_HW_HASH_Init();    \
                                                        NetSecure_EmSSL_HW_CRYPTO_Init();  \
                                                    } while (0u)

#endif
#endif